<?php

/**
* 本文件用来规定不能访问的地址，访客访问时就成了404
*/

// 规定相对根目录的哪些一级路径是不能访问的
$disallow = array('wp-admin','wp-login.php','wp-include','wp-content','wp-config.php');

// 下面这一部分主要是获取相对根目录的哪些一级路径
$blog_url = trailingslashit( get_bloginfo('url') );
$schema = is_ssl() ? 'https://' : 'http://';
$current_url = $schema . $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI'];
$request_url = str_replace( $blog_url, '', $current_url );
$request_url = str_replace('index.php/', '', $request_url);
$base = explode( '?', $request_url);
$base = $base[0];
$base = rtrim($base,"/");
$exp = explode( '/', $base, 2 );
$super_base = reset( $exp );

// 这个地方对用户权限进行一个判断，
if(is_user_logged_in()){
	$current_user = get_userdata(get_current_user_id());
	if($current_user->user_level >= 2)$current_user_disallow = false;
	else $current_user_disallow = true;
}else $current_user_disallow = true;

// 最后对上面获取的路径与给定的函数中的值进行对比，确定是否可访问那些路径
if(in_array($super_base,$disallow) && $current_user_disallow){
	if(is_user_logged_in()){
		wp_redirect(get_bloginfo('url').'/author');
		exit();
	}
	status_header(404);
	require_once( get_404_template() );
	exit;
}

